package cn.mysocketnet.a03udpdemo2;

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.util.Scanner;

public class SendMessageDemo {
    public static void main(String[] args) {
        /*
            按照下面的要求实现程序
                UDP发送数据：数据来自于键盘录入，直到输入的数据是886，发送数据结束
                UDP接收数据：因为接收端不知道发送端什么时候停止发送，故采用死循环接收
        */


        //1.创建对象DatagramSocket的对象
        try(DatagramSocket ds = new DatagramSocket()){
            Scanner sc = new Scanner(System.in);
            while (true){
                System.out.println("请输入您要说的话：");
                String str = sc.nextLine();
                if ("886".equals(str)){
                    break;
                }
                byte[] bytes = str.getBytes();
                DatagramPacket dp = new DatagramPacket(bytes, bytes.length, InetAddress.getByName("255.255.255.255"), 10086);
                ds.send(dp);
            }
        }catch (Exception e){
            e.printStackTrace();
        }
    }
}
